<html>
	<head>
		<meta charset="utf-8"></meta>
		<title>BLongSlider</title>
		<link href="./style.css" rel="stylesheet" type="text/css"/>
	</head>
	<body>
		<div class="class" name="BLongSlider">
			<h1>BLongSlider</h1>
			<p>继承自<a href="BWidget.html">BWidget</a></p>
			<p id="resume">BSlider是整数滑动条，可以通过鼠标的简单拖动手柄修改整数值，包含数值范围与当前值。<a href="#desc">详细</a></p>
			<h2>public</h2>
			<table id="public">
				<tr><td align="right"></td><td><a href="#BLongSlider(BWidget*)">BLongSlider</a>(BWidget* parent = 0);</td></tr>
				<tr><td align="right"></td><td><a href="#BLongSlider(Orientation,BWidget*)">BLongSlider</a>(Orientation orientation, BWidget* parent = 0);</td></tr>
				<tr><td align="right"></td><td><a href="#BLongSlider(BLong, BLong,BWidget*)">BLongSlider</a>(BLong minimum, BLong maximum, BWidget* parent = 0);</td></tr>
				<tr><td align="right"></td><td><a href="#BLongSlider(BLong, BLong, Orientation,BWidget*)">BLongSlider</a>(BLong minimum, BLong maximum, Orientation orientation, BWidget* parent = 0);</td></tr>
				<tr><td align="right"></td><td><a href="#~BLongSlider()">~BLongSlider</a>();</td></tr>
				<tr><td align="right">void </td><td><a href="#setReadOnly(bool)">setReadOnly</a>(bool readOnly);</td></tr>
				<tr><td align="right">bool </td><td><a href="#readOnly()">readOnly</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setOrientation(Orientation)">setOrientation</a>(Orientation orientation);</td></tr>
				<tr><td align="right">Orientation </td><td><a href="#orientation()">orientation</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setGraph(Graph)">setGraph</a>(Graph graph);</td></tr>
				<tr><td align="right">Graph </td><td><a href="#graph()">graph</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setIconSize(const BSize&)">setIconSize</a>(const BSize& iconSize);</td></tr>
				<tr><td align="right">const BSize& </td><td><a href="#iconSize()">iconSize</a>() const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setValue(BLong)">setValue</a>(BLong value);</td></tr>
				<tr><td align="right">BLong </td><td><a href="#value()">value</a>() const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setRange(BLong, BLong)">setRange</a>(BLong minimum, BLong maximum);</td></tr>
				<tr><td align="right">bool </td><td><a href="#setRange(const BRangel&)">setRange</a>(const BRangel& range);</td></tr>
				<tr><td align="right">BRangel </td><td><a href="#range()">range</a>() const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setMinimum(BLong)">setMinimum</a>(BLong minimum);</td></tr>
				<tr><td align="right">BLong </td><td><a href="#minimum()">minimum</a>() const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setMaximum(BLong)">setMaximum</a>(BLong maximum);</td></tr>
				<tr><td align="right">BLong </td><td><a href="#maximum()">maximum</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setStep(BLong)">setStep</a>(BLong step);</td></tr>
				<tr><td align="right">BLong </td><td><a href="#step()">step</a>() const;</td></tr>
				<tr><td align="right">BReal </td><td><a href="#ratio()">ratio</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#increase()">increase</a>();</td></tr>
				<tr><td align="right">void </td><td><a href="#decrease()">decrease</a>();</td></tr>
				<tr><td align="right">virtual BSize </td><td><a href="#sizeHint()">sizeHint</a>() const;</td></tr>
			</table>
			<h2>protected</h2>
			<table id="protected">
				<tr><td align="right">virtual void </td><td><a href="#resizeEvent(const BEvent&)">resizeEvent</a>(const BEvent& event);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#freshEvent(const BEvent&)">freshEvent</a>(const BEvent& event);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#styleEvent(const BEvent&)">styleEvent</a>(const BEvent& event);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#paintEvent(const BEvent&)">paintEvent</a>(const BEvent& event);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#mouseEnterEvent(const BMouseEvent&)">mouseEnterEvent</a>(const BMouseEvent& mouseEvent);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#mouseLeaveEvent(const BMouseEvent&)">mouseLeaveEvent</a>(const BMouseEvent& mouseEvent);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#mousePressEvent(const BMouseEvent&)">mousePressEvent</a>(const BMouseEvent& mouseEvent);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#mouseReleaseEvent(const BMouseEvent&)">mouseReleaseEvent</a>(const BMouseEvent& mouseEvent);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#mouseMoveEvent(const BMouseEvent&)">mouseMoveEvent</a>(const BMouseEvent& mouseEvent);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#mouseWheelEvent(const BMouseEvent&)">mouseWheelEvent</a>(const BMouseEvent& wheelEvent);</td></tr>
			</table>
			<div id="desc">
				<h2>详细介绍：</h2>
				<p>BSlider是整数滑动条，可以通过鼠标的简单拖动手柄修改整数值，包含数值范围与当前值。</p>
				<h3>信号表:</h3>
				<table>
					<tr><td>Signal_ReadOnly</td><td>只读模式改变时发出，值为：bool readOnly。</td></tr>
					<tr><td>Signal_Sliding</td><td>Emited when handle is draged to slide and mouse button is down.</td></tr>
					<tr><td>Signal_ValueChanged</td><td>当前值被改变时发出，值为：BLong value。</td></tr>
					<tr><td>Signal_Sliding</td><td>当手柄被拖动时发出，值为：BLong value。</td></tr>
					<tr><td>Signal_SlideFinished</td><td>当手柄拖动操作完成时发出，值为：BLong value。</td></tr>
					<tr><td>Signal_OrientationChanged</td><td>方向被改变时发出，值为：Orientation orientation。</td></tr>
					<tr><td>Signal_RangeChanged</td><td>数值范围改变时发出，值为：BRangel range。</td></tr>
					<tr><td>Signal_StepChanged</td><td>单步值改变时发出，值为：BLong step。</td></tr></table>
			</div>
			<h2 id="docs">成员文档：</h2>
			<div id="BLongSlider(BWidget*)">
				<h3>BLongSlider(BWidget* parent = 0);</h3>
				<p>创建一个滑动条，parent指定其父控件。</p>
			</div>
			<div id="BLongSlider(Orientation,BWidget*)">
				<h3>BLongSlider(Orientation orientation, BWidget* parent = 0);</h3>
				<p>创建一个滑动条，Orientation指定此滑动条的方向，parent指定其父控件。</p>
			</div>
			<div id="BLongSlider(BLong, BLong,BWidget*)">
				<h3>BLongSlider(BLong minimum, BLong maximum, BWidget* parent = 0);</h3>
				<p>创建一个滑动条，minimum和maximum指定数值范围，parent指定其父控件。</p>
			</div>
			<div id="BLongSlider(BLong, BLong, Orientation,BWidget*)">
				<h3>BLongSlider(BLong minimum, BLong maximum, Orientation orientation, BWidget* parent = 0);</h3>
				<p>创建一个滑动条，minimum和maximum指定数值范围，Orientation指定此滑动条的方向，parent指定其父控件。</p>
			</div>
			<div id="~BLongSlider()">
				<h3>~BLongSlider();</h3>
				<p>析构一个滑动条。</p>
			</div>
			<div id="setReadOnly(bool)">
				<h3>void setReadOnly(bool readOnly);</h3>
				<p>设置只读模式。</p>
			</div>
			<div id="readOnly()">
				<h3>bool readOnly() const;</h3>
				<p>获得只读模式。</p>
			</div>
			<div id="setOrientation(Orientation)">
				<h3>void setOrientation(Orientation orientation);</h3>
				<p>设置滑动条方向，可为横向或者纵向。</p>
			</div>
			<div id="orientation()">
				<h3>Orientation orientation() const;</h3>
				<p>获得滑动条方向</p>
			</div>
			<div id="setGraph(Graph)">
				<h3>void setGraph(Graph graph);</h3>
				<p>设置滑动手柄的图样。</p>
			</div>
			<div id="graph()">
				<h3>Graph graph() const;</h3>
				<p>获得滑动手柄的图样。</p>
			</div>
			<div id="setIconSize(const BSize&)">
				<h3>void setIconSize(const BSize&amp; iconSize);</h3>
				<p>设置图标尺寸。</p>
			</div>
			<div id="iconSize()">
				<h3>const BSize&amp; iconSize() const;</h3>
				<p>获得图标尺寸。</p>
			</div>
			<div id="setValue(BLong)">
				<h3>bool setValue(BLong value);</h3>
				<p>设置当前值。</p>
			</div>
			<div id="value()">
				<h3>BLong value() const;</h3>
				<p>获得当前值。</p>
			</div>
			<div id="setRange(BLong, BLong)">
				<h3>bool setRange(BLong minimum, BLong maximum);</h3>
				<p>设置数值范围， 此方法同于setRange(BRangel(minimum, maximum)。</p>
			</div>
			<div id="setRange(const BRangel&)">
				<h3>bool setRange(const BRangel&amp; range);</h3>
				<p>设置数值范围。</p>
			</div>
			<div id="range()">
				<h3>BRangel range() const;</h3>
				<p>获得数值范围。</p>
			</div>
			<div id="setMinimum(BLong)">
				<h3>bool setMinimum(BLong minimum);</h3>
				<p>设置数值范围的下限值。</p>
			</div>
			<div id="minimum()">
				<h3>BLong minimum() const;</h3>
				<p>获得数值范围的下限值。</p>
			</div>
			<div id="setMaximum(BLong)">
				<h3>bool setMaximum(BLong maximum);</h3>
				<p>设置数值范围的上限值。</p>
			</div>
			<div id="maximum()">
				<h3>BLong maximum() const;</h3>
				<p>获得数值范围的上限值。</p>
			</div>
			<div id="setStep(BLong)">
				<h3>void setStep(BLong step);</h3>
				<p>设置单步调整值。</p>
			</div>
			<div id="step()">
				<h3>BLong step() const;</h3>
				<p>获得单步调整值。</p>
			</div>
			<div id="ratio()">
				<h3>BReal ratio() const;</h3>
				<p>获得当前值在数值范围中的比例。</p>
			</div>
			<div id="increase()">
				<h3>void increase();</h3>
				<p>当前值增加单步值。</p>
			</div>
			<div id="decrease()">
				<h3>void decrease();</h3>
				<p>当前值减少单步值。</p>
			</div>
			<div id="sizeHint()">
				<h3>virtual BSize sizeHint() const;</h3>
				<p>预设合适值，主方向尺寸为10个字符大小，次方向尺寸为一个字符大小。</p>
			</div>
			<div id="resizeEvent(const BEvent&)">
				<h3>virtual void resizeEvent(const BEvent&amp; event);</h3>
				<p>标记内容需要更新。</p>
			</div>
			<div id="freshEvent(const BEvent&)">
				<h3>virtual void freshEvent(const BEvent&amp; event);</h3>
				<p>更新绘制布局。</p>
			</div>
			<div id="styleEvent(const BEvent&)">
				<h3>virtual void styleEvent(const BEvent&amp; event);</h3>
				<p>样式取值：</p><table>
					<tr><td>Value_Graph</td><td>取值为手柄的图样，值为：Graph handleRect。</td></tr>
					<tr><td>Value_Handle_Size</td><td>取值为手柄的尺寸，值为：BSize handleSize。</td></tr>
					<tr><td>Value_Groove_Size</td><td>取值为沟槽的尺寸，值为：BLong grooveSize。</td></tr></table>
			</div>
			<div id="paintEvent(const BEvent&)">
				<h3>virtual void paintEvent(const BEvent&amp; event);</h3>
				<p>绘制沟槽和手柄。</p>
			</div>
			<div id="mouseEnterEvent(const BMouseEvent&)">
				<h3>virtual void mouseEnterEvent(const BMouseEvent&amp; mouseEvent);</h3>
				<p>更新手柄悬停的状态。</p>
			</div>
			<div id="mouseLeaveEvent(const BMouseEvent&)">
				<h3>virtual void mouseLeaveEvent(const BMouseEvent&amp; mouseEvent);</h3>
				<p>更新手柄悬停的状态。</p>
			</div>
			<div id="mousePressEvent(const BMouseEvent&)">
				<h3>virtual void mousePressEvent(const BMouseEvent&amp; mouseEvent);</h3>
				<p>更新手柄的按下状态。</p>
			</div>
			<div id="mouseReleaseEvent(const BMouseEvent&)">
				<h3>virtual void mouseReleaseEvent(const BMouseEvent&amp; mouseEvent);</h3>
				<p>更新手柄的按下状态，完成拖动手柄的操作。</p>
			</div>
			<div id="mouseMoveEvent(const BMouseEvent&)">
				<h3>virtual void mouseMoveEvent(const BMouseEvent&amp; mouseEvent);</h3>
				<p>更新手柄的悬停的状态，执行拖动手柄的操作。</p>
			</div>
			<div id="mouseWheelEvent(const BMouseEvent&)">
				<h3>virtual void mouseWheelEvent(const BMouseEvent&amp; wheelEvent);</h3>
				<p>执行滚轮操作单步增值或减值。</p>
			</div>
		</div>
	</body>
</html>